package com.le.tester.leetcode;

import java.util.ArrayList;
import java.util.List;

/**
 * createTime：2022/6/6 15:10
 * description：各个数的和相加
 */
public class AddDigits {
    public int addDigits(int num) {

//        String numStr = String.valueOf(num);
//
//        List<Integer> resultList = new ArrayList<>();
//
//        for (int i = 0; i < numStr.length(); i++) {
//            char numChar = numStr.charAt(i);
//            resultList.add(Character.getNumericValue(numChar));
//        }
//
//
//        Integer tempInt = resultList.stream().reduce(Integer::sum).orElse(0);
//        while (tempInt > 9) {
//            tempInt = this.addDigits(tempInt);
//        }
//        return tempInt;
        if (String.valueOf(num).length() == 1) {
            return num;
        }

        if (num % 9 == 0) {
            return 9;
        }


        return num % 9;
    }

    public int handler(int num) {
        String numStr = String.valueOf(num);
        List<Integer> resultList = new ArrayList<>();
        for (int i = 0; i < numStr.length(); i++) {
            char numChar = numStr.charAt(i);
            resultList.add(Character.getNumericValue(numChar));
        }
        return resultList.stream().reduce(Integer::sum).orElse(0);
    }


    public static void main(String[] args) {
        AddDigits addDigits = new AddDigits();
        System.out.println(addDigits.addDigits(38));
    }
}
